Cortex-M3 之 STM32 嵌入式系統設計

Cortex-M3 之 STM32 嵌入式系統設計

作者: 廖義奎
出版社: 中國電力
出版在: 2012-04-01
ISBN-13: 9787512326712
ISBN-10: 7512326718
裝訂格式: 平裝
總頁數: 417 頁





內容描述


<內容簡介>
廖義奎編著的《Cortex-M3之STM32嵌入式系統設計》介紹了以ARMCortex-M3為內核的STM32F103增強型微控制器的特點,深入講解其硬件和軟件設計方法。本書分為STM32基礎開發、STM32深入開發以及STM32高級開發三部分。基礎開發部分介紹了嵌入式系統概述、STM32最小系統設計、STM32程序設計入門、GPIO應用、GCC編譯器的安裝與應用、STM32外部中斷、面向對象設計的本質、USART通信等內容;深入開發部分介紹了深入STM32的工作原理、定時器與日曆、ADC應用、DMA應用、備份寄存器與看門狗程序、TFT驅動與顯示、觸摸屏驅動、SD卡驅動與FAT文件系統等;在高級開發部分介紹?C/OS-II在STM32上的移植、漢字與圖形圖像顯示、攝像頭驅動與圖像採集、以太網及Web遠程控制系統設計等內容。    《Cortex-M3之STM32嵌入式系統設計》配套光盤中附有所有章節的源程序。本書適合於嵌入式開發人員作為開發參考資料,也適合於高校師生作為單片機、嵌入式系統課程的教材和教學參考書。

<目錄>
前言第1章 概述  1.1 嵌入式系統定義  1.2 嵌入式系統的發展    1.2.1 從單片機到嵌入式系統    1.2.2 從芯片級設計到系統級設計    1.2.3 從面向器件到面向任務的設計    1.2.4 從單處理器設計到多處理器設計  1.3 嵌入式系統的應用  1.4 ARM系列嵌入式系統處理器    1.4.1 ARM處理器分類    1.4.2 ARM Cortex處理器    1.4.3 ARM Coretx-M3處理器    1.4.4 ARM Cortex-A8處理器  1.5 從8/16位處理器到ARM Cortex-M3/M  1.6 常見的Cortex-M0/M3系列MCU第2章 STM32最小系統設計  2.1 STM32F103C最小系統設計方案  2.2 最小系統設計的要素    2.2.1 STM32外部晶振    2.2.2 複位電路    2.2.3 LED、Key及BOOT跳線    2.2.4 穩壓電源及ISP下載口    2.2.5 IO埠  2.3 PCB圖設計第3章 STM32程序設計入門  3.1 STM32入門之Hello World程序    3.1.1 開發環境    3.1.2 編寫STM32的C程序    3.1.3 用GCC編譯stm32程序    3.1.4 STM32程序下載    3.1.5 在Obtain_Studio中編譯Hello World程序  3.2 不同開發板的Hello World程序  3.3 基於STM32固件庫的入門程序    3.3.1 STM32固件庫    3.3.2 STM32固件庫外設的初始化和設置    3.3.3 基於STM32固件庫的程序設計  3.4 基於STM32固件庫的Hello World程序代碼分析第4章 GPIO應用  4.1 認識STM32 GPIO    4.1.1 GPIO功能特點    4.1.2 STM32 IO口的優點    4.1.3 STM32固件庫中提供的GPIO庫函數  4.2 KEY_LED程序    4.2.1 創建stm32_C++KEY_LED項目    4.2.2 stm32_C++KEY_LED項目程序分析  4.3 低層代碼分析    4.3.1 GPIO埠的定義    4.3.2 AHB/APB橋的配置    4.3.3 GPIO引腳的配置    4.3.4 GPIO的讀寫第5章 GCC編譯器的安裝與應用  5.1 GCC介紹    5.1.1 GCC概述    5.1.2 MinGW簡介    5.1.3 MinGW的安裝    5.1.4 MinGW測試    5.1.5 常見GCC用法  5.2 ARM GCC編譯器    5.2.1 WinARM編譯器    5.2.2 Sourcery G++ Lite for ARM EABI編譯器  5.3 Obtain_Studio集成開發系統    5.3.1 Obtain_Studio集成開發系統介紹    5.3.2 Obtain_Studio集成開發系統常用技巧  5.4 GCC Make編譯文件設計    5.4.1 GCC Make常用命令    5.4.2 makefile文件規則    5.4.3 makefile文件函數  5.5 GCC編譯器LD腳本    5.5.1 C/C++程序內存空間    5.5.2 GCC LD腳本基礎    5.5.3 STM32程序中的LD腳本程序第6章 STM32外部中斷  6.1 STM32外部中斷  6.2 STM32外部中斷實例  6.3 STM32中斷配置    6.3.1 STM32外部中斷程序分析    6.3.2 中斷通道配置    6.3.3 中斷優先級配置    6.3.4 外部中斷模式配置    6.3.5 外部中斷響應函數配置第7章 面向對象程序設計  7.1 程序風格    7.1.1 程序風格的比較    7.1.2 編程風格在程序設計中的作用  7.2 跨越開發板    7.2.1 埠映射的方法    7.2.2 模式設置的方法  7.3 分類與封裝    7.3.1 什麼是分類與封裝    7.3.2 封裝的實現  7.4 隱藏與權限    7.4.1 隱藏    7.4.2 權限  7.5 繼承    7.5.1 CGpio類的繼承    7.5.2 測試CLed和CKey類  7.6 組裝    7.6.1 GPIO的組裝    7.6.2 GPIO組裝的測試  7.7 C++在嵌入式系統中的應用    7.7.1 C++介紹    7.7.2 兼容C語言    7.7.3 在C++程序中調用C函數    7.7.4 面向對象程序設計語言    7.7.5 泛型編程語言    7.7.6 STL編程    7.7.7 接口編程第8章 USART通信  8.1 從51單片機到STM32的串口通信  8.2 USART通用串口通信設計    8.2.1 USART通用串口    8.2.2 USART通用串口通信設計方案  8.3 USART通用串口程序設計入門    8.3.1 USART數據發送程序設計    8.3.2 USART數據接收程序設計  8.4 中斷方式的數據接收    8.4.1 中斷方式的數據接收程序設計    8.4.2 多個串口驅動對象的協同工作  8.5 USART驅動程序的設計    8.5.1 USART驅動程序    8.5.2 printf與cout的實現  8.6 深入STM32 USART的工作原理    8.6.1 USART工作原理    8.6.2 發送器    8.6.3 接收器    8.6.4 USART初始化函數USART_Init    8.6.5 USART波特率的計算方法第9章 STM32的工作原理  9.1 STM32啟動原理    9.1.1 STM32啟動過程分析    9.1.2 STM32軟件複位與功耗控制  9.2 系統時鐘分析    9.2.1 系統時鐘種類    9.2.2 STM32固件庫設置時鐘    9.2.3 系統時鐘配置  9.3 存儲器以及存儲器映射  9.4 NVIC嵌套中斷向量控制器    9.4.1 NVIC嵌套中斷向量控制器    9.4.2 STM32的NVIC優先級  9.5 STM32向量表及配置    9.5.1 STM32複位後從哪個地址開始執行    9.5.2 STM32向量表    9.5.3 用戶程序中的向量表第10章 定時器與日曆  10.1 SysTick定時器    10.1.1 關於SysTick    10.1.2 SysTick測試程序    10.1.3 SysTick程序分析  10.2 RTC定時器    10.2.1 RTC定時器介紹    10.2.2 RTC的本質與測試程序    10.2.3 日曆演算法    10.2.4 STM32的RTC日曆測試程序    10.2.5 STM32 RTC程序分析    10.2.6 RTC秒中斷    10.2.7 RTC鬧鐘    10.2.8 RTC校準  10.3 通用定時器    10.3.1 STM32定時器的種類    10.3.2 通用定時器介紹    10.3.3 通用定時器基本應用程序設計    10.3.4 通用定時器常用模式    10.3.5 輸出模式測試實例    10.3.6 輸入捕獲模式測試實例第11章 ADC應用  11.1 ADC與數字信號處理系統設計    11.1.1 數字信號處理系統設計    11.1.2 STM32簡單的ADC應用實例    11.1.3 過採樣技術    11.1.4 欠採樣技術  11.2 STM32的ADC簡介  11.3 STM32 ADC入門實例    11.3.1 STM32 ADC入門測試程序    11.3.2 STM32 ADC程序分析    11.3.3 STM32內部溫度測量  11.4 STM32 ADC註入方式    11.4.1 STM32 ADC註入方式簡介    11.4.2 STM32雙ADC模式    11.4.3 STM32 ADC註入方式實例第12章 DMA應用  12.1 STM32的DMA簡介    12.1.1 任務轉移策略    12.1.2 STM32的DMA功能  12.2 DMA在ADC中的應用    12.2.1 任務轉移策略的DMA ADC應用實例    12.2.2 DMA_ADC程序分析  12.3 DMA在USART中的應用    12.3.1 任務轉移策略的USART DMA數據發送    12.3.2 任務轉移策略的USART DMA數據接收    12.3.3 任務隊列策略的USART DMA發送中斷應用    12.3.4 任務循環策略的USART DMA接收中斷應用第13章 備份寄存器與看門狗程序  13.1 STM32備份寄存器    13.1.1 備份寄存器特點    13.1.2 BKP應用實例  13.2 STM32看門狗    13.2.1 STM32看門狗介紹    13.2.2 獨立看門狗介紹    13.2.3 獨立看門狗程序設計    13.2.4 窗口看門狗介紹    13.2.5 窗口看門狗測試程序第14章 TFT驅動與顯示  14.1 LCD概述    14.1.1 LCD簡介    14.1.2 LCD接口  14.2 Ili9xx系列TFT驅動芯片  14.3 TFT測試程序    14.3.1 TFT測試程序準備工作    14.3.2 TFT測試主程序    14.3.3 字符的顯示  14.4 基於FSMC的TFT驅動程序設計    14.4.1 STM32的FSMC功能    14.4.2 FSMC與TFT埠連接與埠映射    14.4.3 FSMC與TFT的內存空間映射與操作    14.4.4 FSMC初始化    14.4.5 TFT初始化    14.4.5 TFT驅動程序統一接口函數的實現  14.5 基於GPIO的TFT驅動程序設計第15章 觸摸屏驅動  15.1 觸摸屏介紹  15.2 觸摸屏驅動IC  15.3 觸摸屏測試項目  15.4 觸摸屏驅動程序分析  15.5 觸摸屏校準    15.5.1 觸摸屏校準演算法    15.5.2 觸摸屏校準的實現第16章 SD卡驅動與FAT文件系統  16.1 STM32的SDIO接口    16.1.1 常見存儲卡種類    16.1.2 SD卡結構    16.1.3 STM32的SDIO接口  16.2 FAT文件系統    16.2.1 FAT文件系統概述    16.2.2 FatFs介紹  16.3 STM32 SDIO接口  16.4 SD卡文件讀寫實例    16.4.1 準備工作    16.4.2 SD卡文件讀寫實例    16.4.3 SD卡文件操作類CFile的設計    16.4.4 目錄操作第17章 μC/OS-Ⅱ在STM32上的移植  17.1 μC/OS-Ⅱ概述    17.1.1 μC/OS-Ⅱ簡介    17.1.2 μC/OS-Ⅱ的組成部分  17.2 μC/OS-Ⅱ移植到STM  17.3 μC/OS-Ⅱ工作原理    17.3.1 μC/OS-Ⅱ啟動過程    17.3.2 任務切換的相關函數解析第18章 漢字與圖形圖像顯示  18.1 漢字顯示    18.1.1 漢字庫    18.1.2 程序中加入漢字庫實現漢字顯示    18.1.3 使用SD卡上的漢字庫實現漢字顯示  18.2 圖形繪製  18.3 圖像顯示    18.3.1 位圖與bmp文件格式    18.3.2 bmp文件操作    18.3.3 bmp圖像顯示測試程序第19章 攝像頭驅動與圖像採集  19.1 攝像頭接口    19.1.1 圖像傳感器    19.1.2 OV7670攝像頭    19.1.3 CMOS攝像頭接口  19.2 CMOS攝像頭測試程序  19.3 深入CMOS攝像頭驅動程序原理    19.3.1 SCCB協議    19.3.2 SCCB協議驅動程序設計    19.3.3 CMOS攝像頭驅動程序設計第20章 以太網及Web遠程控制系統設計  20.1 ENC28J60以太網控制器  20.2 網絡測試程序    20.2.1 Web Server測試    20.2.2 UDP通信測試  20.3 IP/ICMP協議與Ping命令的實現    20.3.1 以太網數據包結構    20.3.2 IP協議    20.3.3 ICMP協議    20.3.4 Ping命令    20.3.5 Ping命令的實現  20.4 UDP通信原理    20.4.1 UDP協議    20.4.2 UDP通信的實現  20.5 Web Server程序設計    20.5.1 Web Server原理    20.5.2 TCP設計    20.5.3 Web Server設計  20.6 ENC28J60驅動程序設計    20.6.1 STM32 SPI接口    20.6.2 STM32 SPI驅動程序    20.6.3 ENC28J60驅動程序參考文獻




相關書籍

電腦組成原理在線實驗教程——FPGA遠程實驗平臺教學與實踐

作者 柴志雷 李佩琦 吳子剛 陽文敏

2012-04-01

微電子學 (上冊), 7/e (Smith: Microelectronic Circuits, 7/e)

作者 Adel Sedra Kenneth Smith 曹恆偉 林浩雄 呂學士 郭建宏 譯

2012-04-01

LabVIEW 程式設計 (含LabVIEW NXG軟體操作)(附多媒體光碟)

作者 陳瓊興

2012-04-01